package br.com.raxataxi.modelo;

import java.util.Date;
import java.util.List;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

@Entity
@Table (name="COMPARTILHAMENTO")
public class CompartilharTaxi {
	
	@Id
	@GeneratedValue (strategy=GenerationType.AUTO)
	@Column (name="IDCOMPARTILHAMENTO")
	private long idCompartilhamento;
	@Temporal (TemporalType.DATE)
	@Column (name="DATACOMPARTILHAMENTO")
	private Date dataCompartilhamento;
	@Temporal (TemporalType.TIME)
	@Column (name="HORACOMPARTILHAMENTO")
	private Date horaCompartilhamento;
	@Column (name="LONGITUDE_P")
	private String longitudePartida;
	@Column (name="LATITUDE_P")
	private String latitudePartida;
	@Column (name="LONGITUDE_D")
	private String LongitudeDetino;
	@Column (name="LATITUDE_D")
	private String latitudeDestino;
	
	//Relacionamento
	@OneToMany (cascade=CascadeType.ALL)
	private List<Usuario> compartilharUsuario;

	public long getIdCompartilhamento() {
		return idCompartilhamento;
	}

	public void setIdCompartilhamento(long idCompartilhamento) {
		this.idCompartilhamento = idCompartilhamento;
	}

	public Date getDataCompartilhamento() {
		return dataCompartilhamento;
	}

	public void setDataCompartilhamento(Date dataCompartilhamento) {
		this.dataCompartilhamento = dataCompartilhamento;
	}

	public Date getHoraCompartilhamento() {
		return horaCompartilhamento;
	}

	public void setHoraCompartilhamento(Date horaCompartilhamento) {
		this.horaCompartilhamento = horaCompartilhamento;
	}

	public String getLongitudePartida() {
		return longitudePartida;
	}

	public void setLongitudePartida(String longitudePartida) {
		this.longitudePartida = longitudePartida;
	}

	public String getLatitudePartida() {
		return latitudePartida;
	}

	public void setLatitudePartida(String latitudePartida) {
		this.latitudePartida = latitudePartida;
	}

	public String getLongitudeDetino() {
		return LongitudeDetino;
	}

	public void setLongitudeDetino(String longitudeDetino) {
		LongitudeDetino = longitudeDetino;
	}

	public String getLatitudeDestino() {
		return latitudeDestino;
	}

	public void setLatitudeDestino(String latitudeDestino) {
		this.latitudeDestino = latitudeDestino;
	}

	public List<Usuario> getCompartilharUsuario() {
		return compartilharUsuario;
	}

	public void setCompartilharUsuario(List<Usuario> compartilharUsuario) {
		this.compartilharUsuario = compartilharUsuario;
	}
	
}
